<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>[Generic Component Framework v3] GCF::GuiComponent Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<!--link href="tabs.css" rel="stylesheet" type="text/css"-->
</head><body>
 <div id="wrapper">
    <div id="logo_box">
        <a class="img_link" href="https://github.com/pnudupa/gcf" target="_blank" ><img style="float:left;margin-left:10px;margin-top:5px;margin-bottom:5px;"src="header_gcf_logo.jpg" alt="GCF LOGO"/></a>
        <a class="img_link" href="https://www.vcreatelogic.com/" target="_blank" ><img style="float:right;margin-right:10px; margin-top: 30px;" src="header_vcl_logo.jpg" alt="VCL LOGO"/></a>
        <div style="clear:both"></div>
    </div>
    <div class="nav">
        <ul>
            <li class="selectedpage">
                <a class="a-home" href="index.html" >
                    <span>Home</span>
                </a>
            </li>
            <li>
                <a class="a-classes " href="classes.html">
                    <span>All Classes</span>
                </a>
            </li>
            <li>
                <a class="a-home " href="gcf_modules.html">
                    <span>Modules</span>
                </a>
            </li>
            <li>
                <a class="a-home " href="gcf_guides_and_videos.html">
                    <span>Guides & Videos</span>
                </a>
            </li>
            <li>
                <a class="a-home " href="gcf_tools_and_inbuilt_components.html">
                    <span>Tools & Components</span>
                </a>
            </li>
        </ul>
    </div>
    <div id="main-content">
        <div class="inside">
        <div>
<!-- Generated by Doxygen 1.8.16 -->
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><b>GCF</b></li><li class="navelem"><a class="el" href="class_g_c_f_1_1_gui_component.html">GuiComponent</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="class_g_c_f_1_1_gui_component-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">GCF::GuiComponent Class Reference<div class="ingroups"><a class="el" href="group__gcf__gui.html">GCF Gui Module</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Extends <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a> to ease creation of GUI components.  
 <a href="class_g_c_f_1_1_gui_component.html#details">More...</a></p>

<p><code>#include &lt;GCF3/GuiComponent&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a07e764a562147615da48972af9079f3d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a07e764a562147615da48972af9079f3d">GuiComponent</a> (QObject *parent=nullptr)</td></tr>
<tr class="separator:a07e764a562147615da48972af9079f3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_g_c_f_1_1_component"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_g_c_f_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a></td></tr>
<tr class="memitem:a0a8e6280e3029cab1db39d4a0b0cdf11 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a0a8e6280e3029cab1db39d4a0b0cdf11">Component</a> (QObject *parent=nullptr)</td></tr>
<tr class="separator:a0a8e6280e3029cab1db39d4a0b0cdf11 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a424f54d7c57c719b0ec16c3094ca565a inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual QString&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a> () const</td></tr>
<tr class="separator:a424f54d7c57c719b0ec16c3094ca565a inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1902eb93c5fce2f2aa82e39b5fd2c494 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual QString&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a1902eb93c5fce2f2aa82e39b5fd2c494">organization</a> () const</td></tr>
<tr class="separator:a1902eb93c5fce2f2aa82e39b5fd2c494 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac21a96f4b23f6ac1ce997c86726dba2e inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_g_c_f_1_1_version.html">GCF::Version</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#ac21a96f4b23f6ac1ce997c86726dba2e">version</a> () const</td></tr>
<tr class="separator:ac21a96f4b23f6ac1ce997c86726dba2e inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac61518ed80c6a172b25cac4a6666f882 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual QString&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#ac61518ed80c6a172b25cac4a6666f882">buildTimestamp</a> () const</td></tr>
<tr class="separator:ac61518ed80c6a172b25cac4a6666f882 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8105c199273cebd258ffda96e191c3d9 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">const QSettings *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a8105c199273cebd258ffda96e191c3d9">settings</a> () const</td></tr>
<tr class="separator:a8105c199273cebd258ffda96e191c3d9 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a051e5aca7176bec532dcf28e43012708 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a051e5aca7176bec532dcf28e43012708">isLoaded</a> () const</td></tr>
<tr class="separator:a051e5aca7176bec532dcf28e43012708 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e35213d5a5c8933a78a3fb10e737459 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a9e35213d5a5c8933a78a3fb10e737459">isActive</a> () const</td></tr>
<tr class="separator:a9e35213d5a5c8933a78a3fb10e737459 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06e3573f06292a5211b81201ced61deb inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a06e3573f06292a5211b81201ced61deb">load</a> ()</td></tr>
<tr class="separator:a06e3573f06292a5211b81201ced61deb inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c7530baab5694de7676a76eeb50eb3f inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a8c7530baab5694de7676a76eeb50eb3f">unload</a> ()</td></tr>
<tr class="separator:a8c7530baab5694de7676a76eeb50eb3f inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a6e0f95047a60edfb6e25c374a74340 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a7a6e0f95047a60edfb6e25c374a74340">activate</a> ()</td></tr>
<tr class="separator:a7a6e0f95047a60edfb6e25c374a74340 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19620ff366fc68e58ddf532acb54a598 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a19620ff366fc68e58ddf532acb54a598">deactivate</a> ()</td></tr>
<tr class="separator:a19620ff366fc68e58ddf532acb54a598 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8791368cb9615392e6c9c2d380034f1 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#ac8791368cb9615392e6c9c2d380034f1">addContentObject</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QObject *object, const QVariantMap &amp;info=QVariantMap())</td></tr>
<tr class="separator:ac8791368cb9615392e6c9c2d380034f1 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5419a2ae3965f0994c50f68f48cb9ea5 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a5419a2ae3965f0994c50f68f48cb9ea5">addContentObject</a> (QObject *object, const QVariantMap &amp;info=QVariantMap())</td></tr>
<tr class="separator:a5419a2ae3965f0994c50f68f48cb9ea5 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0b7fe34462a0ba01ab38f348c024d6 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a5b0b7fe34462a0ba01ab38f348c024d6">removeContentObject</a> (QObject *object)</td></tr>
<tr class="separator:a5b0b7fe34462a0ba01ab38f348c024d6 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f1eee986efea04923574a43901a19f2 inherit pub_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a5f1eee986efea04923574a43901a19f2">removeContentObject</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>)</td></tr>
<tr class="separator:a5f1eee986efea04923574a43901a19f2 inherit pub_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:adb3ce3559c873709379dcd31946f2da6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#adb3ce3559c873709379dcd31946f2da6">~GuiComponent</a> ()</td></tr>
<tr class="separator:adb3ce3559c873709379dcd31946f2da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada64bbc4fc1f124812e60a20bf3ac566"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ada64bbc4fc1f124812e60a20bf3ac566">contentObjectLoadEvent</a> (<a class="el" href="class_g_c_f_1_1_content_object_load_event.html">GCF::ContentObjectLoadEvent</a> *e)</td></tr>
<tr class="separator:ada64bbc4fc1f124812e60a20bf3ac566"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a862fb78fdba64b956eab4c8a82c89b07"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a862fb78fdba64b956eab4c8a82c89b07">contentObjectMergeEvent</a> (<a class="el" href="class_g_c_f_1_1_content_object_merge_event.html">GCF::ContentObjectMergeEvent</a> *e)</td></tr>
<tr class="separator:a862fb78fdba64b956eab4c8a82c89b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af79494e17d96561cfc9c0042a975c3f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#af79494e17d96561cfc9c0042a975c3f0">contentObjectUnloadEvent</a> (<a class="el" href="class_g_c_f_1_1_content_object_unload_event.html">GCF::ContentObjectUnloadEvent</a> *e)</td></tr>
<tr class="separator:af79494e17d96561cfc9c0042a975c3f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3682354828ce7fbffb1377d22a6019d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a3682354828ce7fbffb1377d22a6019d3">contentObjectUnmergeEvent</a> (<a class="el" href="class_g_c_f_1_1_content_object_unmerge_event.html">GCF::ContentObjectUnmergeEvent</a> *e)</td></tr>
<tr class="separator:a3682354828ce7fbffb1377d22a6019d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23ea568005310025f648155ceb84a902"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a23ea568005310025f648155ceb84a902">activateContentObjectEvent</a> (<a class="el" href="class_g_c_f_1_1_activate_content_object_event.html">GCF::ActivateContentObjectEvent</a> *e)</td></tr>
<tr class="separator:a23ea568005310025f648155ceb84a902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b625a598a76b042b6e2948dbad4da86"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a8b625a598a76b042b6e2948dbad4da86">deactivateContentObjectEvent</a> (<a class="el" href="class_g_c_f_1_1_deactivate_content_object_event.html">GCF::DeactivateContentObjectEvent</a> *e)</td></tr>
<tr class="separator:a8b625a598a76b042b6e2948dbad4da86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abede43b20eb5ed489fa73f4727311527"><td class="memItemLeft" align="right" valign="top">virtual QWidget *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#abede43b20eb5ed489fa73f4727311527">loadWidget</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:abede43b20eb5ed489fa73f4727311527"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4ea639a05713bbb368e740851452419"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ac4ea639a05713bbb368e740851452419">unloadWidget</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QWidget *widget, const QVariantMap &amp;info)</td></tr>
<tr class="separator:ac4ea639a05713bbb368e740851452419"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4ee527d9f6a3d0d24b67055a57bf8d2"><td class="memItemLeft" align="right" valign="top">virtual QAction *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ab4ee527d9f6a3d0d24b67055a57bf8d2">loadAction</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:ab4ee527d9f6a3d0d24b67055a57bf8d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca8e6c15489490f1ee188453515cbf6c"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#aca8e6c15489490f1ee188453515cbf6c">unloadAction</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QAction *action, const QVariantMap &amp;info)</td></tr>
<tr class="separator:aca8e6c15489490f1ee188453515cbf6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7006855f079d3023da4240d33114b19"><td class="memItemLeft" align="right" valign="top">virtual QActionGroup *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ab7006855f079d3023da4240d33114b19">loadActionGroup</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:ab7006855f079d3023da4240d33114b19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a866661284b9754e666bc7e4e67bedc77"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a866661284b9754e666bc7e4e67bedc77">unloadActionGroup</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QActionGroup *actionGroup, const QVariantMap &amp;info)</td></tr>
<tr class="separator:a866661284b9754e666bc7e4e67bedc77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ec17f7013f1a5403811aedc1a44bccd"><td class="memItemLeft" align="right" valign="top">virtual QMenu *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a6ec17f7013f1a5403811aedc1a44bccd">loadMenu</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:a6ec17f7013f1a5403811aedc1a44bccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cadf81fea97c04b5e16a51d283a19de"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a6cadf81fea97c04b5e16a51d283a19de">unloadMenu</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QMenu *menu, const QVariantMap &amp;info)</td></tr>
<tr class="separator:a6cadf81fea97c04b5e16a51d283a19de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af29be55061f29a43ed2f8196851ea19d"><td class="memItemLeft" align="right" valign="top">virtual QMenuBar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#af29be55061f29a43ed2f8196851ea19d">loadMenuBar</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:af29be55061f29a43ed2f8196851ea19d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acec3965217281de78da2fa16f864da13"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#acec3965217281de78da2fa16f864da13">unloadMenuBar</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QMenuBar *menuBar, const QVariantMap &amp;info)</td></tr>
<tr class="separator:acec3965217281de78da2fa16f864da13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aadef90f4c5c51035fa954642a1cb539c"><td class="memItemLeft" align="right" valign="top">virtual QToolBar *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#aadef90f4c5c51035fa954642a1cb539c">loadToolBar</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:aadef90f4c5c51035fa954642a1cb539c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6461b29d15c603aa87b4d1c59ca71c1b"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a6461b29d15c603aa87b4d1c59ca71c1b">unloadToolBar</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QToolBar *toolBar, const QVariantMap &amp;info)</td></tr>
<tr class="separator:a6461b29d15c603aa87b4d1c59ca71c1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2df81bac62394e1ce2b3c82974d8723c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a2df81bac62394e1ce2b3c82974d8723c">mergeObject</a> (QObject *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a2df81bac62394e1ce2b3c82974d8723c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf0f385b556e1742e3c5df8c9222a0f3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#acf0f385b556e1742e3c5df8c9222a0f3">unmergeObject</a> (QObject *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:acf0f385b556e1742e3c5df8c9222a0f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e77aa7032803aacbe8a695f15121760"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a7e77aa7032803aacbe8a695f15121760">mergeWithWidget</a> (QWidget *parent, QWidget *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a7e77aa7032803aacbe8a695f15121760"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f962e11fdfe6f5bb7a3e399e51e73c0"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a1f962e11fdfe6f5bb7a3e399e51e73c0">unmergeFromWidget</a> (QWidget *parent, QWidget *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a1f962e11fdfe6f5bb7a3e399e51e73c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06b9c46dd5bc98a483ceefcd010da43a"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a06b9c46dd5bc98a483ceefcd010da43a">mergeWithActionGroup</a> (QActionGroup *parent, QAction *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a06b9c46dd5bc98a483ceefcd010da43a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab50d746460c1cde7b30ed5a0d91d5437"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ab50d746460c1cde7b30ed5a0d91d5437">unmergeFromActionGroup</a> (QActionGroup *parent, QAction *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:ab50d746460c1cde7b30ed5a0d91d5437"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64ce09eb669f5a3ff946194d950e797f"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a64ce09eb669f5a3ff946194d950e797f">mergeWithMenu</a> (QMenu *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a64ce09eb669f5a3ff946194d950e797f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5368f23f04d0b1b3f0b52cb623fbf10"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ae5368f23f04d0b1b3f0b52cb623fbf10">unmergeFromMenu</a> (QMenu *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:ae5368f23f04d0b1b3f0b52cb623fbf10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8b0b899c654a6e51d7905f429700de5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ad8b0b899c654a6e51d7905f429700de5">mergeWithToolBar</a> (QToolBar *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:ad8b0b899c654a6e51d7905f429700de5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fad78abca5c7a18c25ae55632bcc513"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a0fad78abca5c7a18c25ae55632bcc513">unmergeFromToolBar</a> (QToolBar *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a0fad78abca5c7a18c25ae55632bcc513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24fcf14ba83e79f7c2afe024c3b0fd8b"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a24fcf14ba83e79f7c2afe024c3b0fd8b">mergeWithMenuBar</a> (QMenuBar *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a24fcf14ba83e79f7c2afe024c3b0fd8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeec9a2994808f423ed546d37bcf77c58"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#aeec9a2994808f423ed546d37bcf77c58">unmergeFromMenuBar</a> (QMenuBar *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:aeec9a2994808f423ed546d37bcf77c58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08afba3a4d51e310da277b9c7914643e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#a08afba3a4d51e310da277b9c7914643e">activateObject</a> (QObject *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:a08afba3a4d51e310da277b9c7914643e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5ee97968677c04dc230317eb87d0b4f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#aa5ee97968677c04dc230317eb87d0b4f">deactivateObject</a> (QObject *parent, QObject *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:aa5ee97968677c04dc230317eb87d0b4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3c5870fa4f67f09925864df86441e8e"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#aa3c5870fa4f67f09925864df86441e8e">activateWidget</a> (QWidget *parent, QWidget *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:aa3c5870fa4f67f09925864df86441e8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8db52de6e219c6960ea159cfbc84e80"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_gui_component.html#ab8db52de6e219c6960ea159cfbc84e80">deactivateWidget</a> (QWidget *parent, QWidget *child, const QVariantMap &amp;parentInfo, const QVariantMap &amp;childInfo)</td></tr>
<tr class="separator:ab8db52de6e219c6960ea159cfbc84e80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_g_c_f_1_1_component"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_g_c_f_1_1_component')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a></td></tr>
<tr class="memitem:a0da80fa064fa71d0e048ed9c45f54eec inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a0da80fa064fa71d0e048ed9c45f54eec">~Component</a> ()</td></tr>
<tr class="separator:a0da80fa064fa71d0e048ed9c45f54eec inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06a056e6114fbaa341874a2064c6562b inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a06a056e6114fbaa341874a2064c6562b">finalizeEvent</a> (<a class="el" href="class_g_c_f_1_1_finalize_event.html">GCF::FinalizeEvent</a> *e)</td></tr>
<tr class="separator:a06a056e6114fbaa341874a2064c6562b inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75422842587613d43844e73fb8ca021d inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a75422842587613d43844e73fb8ca021d">initializeEvent</a> (<a class="el" href="class_g_c_f_1_1_initialize_event.html">GCF::InitializeEvent</a> *e)</td></tr>
<tr class="separator:a75422842587613d43844e73fb8ca021d inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a464361482ef9039aee875940ae64306c inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a464361482ef9039aee875940ae64306c">activationEvent</a> (<a class="el" href="class_g_c_f_1_1_activation_event.html">GCF::ActivationEvent</a> *e)</td></tr>
<tr class="separator:a464361482ef9039aee875940ae64306c inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b9e7071c2f4b483a4ee51b08b70835c inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a7b9e7071c2f4b483a4ee51b08b70835c">contentLoadEvent</a> (<a class="el" href="class_g_c_f_1_1_content_load_event.html">GCF::ContentLoadEvent</a> *e)</td></tr>
<tr class="separator:a7b9e7071c2f4b483a4ee51b08b70835c inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb0e763839f42c3cca61d22c3ee7e1ce inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#afb0e763839f42c3cca61d22c3ee7e1ce">deactivationEvent</a> (<a class="el" href="class_g_c_f_1_1_deactivation_event.html">GCF::DeactivationEvent</a> *e)</td></tr>
<tr class="separator:afb0e763839f42c3cca61d22c3ee7e1ce inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c46c693324b5e524e5c1188dfb4560d inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a4c46c693324b5e524e5c1188dfb4560d">settingsLoadEvent</a> (<a class="el" href="class_g_c_f_1_1_settings_load_event.html">GCF::SettingsLoadEvent</a> *e)</td></tr>
<tr class="separator:a4c46c693324b5e524e5c1188dfb4560d inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47f8742e87fa5ad86ed822cb60d90a79 inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a47f8742e87fa5ad86ed822cb60d90a79">contentUnloadEvent</a> (<a class="el" href="class_g_c_f_1_1_content_unload_event.html">GCF::ContentUnloadEvent</a> *e)</td></tr>
<tr class="separator:a47f8742e87fa5ad86ed822cb60d90a79 inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03b90d525333d9a4e5f34fd16ad8bf35 inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#a03b90d525333d9a4e5f34fd16ad8bf35">settingsUnloadEvent</a> (<a class="el" href="class_g_c_f_1_1_settings_unload_event.html">GCF::SettingsUnloadEvent</a> *e)</td></tr>
<tr class="separator:a03b90d525333d9a4e5f34fd16ad8bf35 inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa764b26829ba318385b3921bf2b1800a inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual QObject *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#aa764b26829ba318385b3921bf2b1800a">loadObject</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, const QVariantMap &amp;info)</td></tr>
<tr class="separator:aa764b26829ba318385b3921bf2b1800a inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad403e437d09e17139abe5bab8ae3f1e6 inherit pro_methods_class_g_c_f_1_1_component"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_g_c_f_1_1_component.html#ad403e437d09e17139abe5bab8ae3f1e6">unloadObject</a> (const QString &amp;<a class="el" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>, QObject *object, const QVariantMap &amp;info)</td></tr>
<tr class="separator:ad403e437d09e17139abe5bab8ae3f1e6 inherit pro_methods_class_g_c_f_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This class offers GUI (or widgets) friendly methods to make creation of GUI components simple and straight forward. It is not mandatory for you to implement from this class if you are writing GUI components. You can direclty subclass <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a>. However, inheriting from this class makes your code easier to comprehend and manage. Plus you can leverage on all the GUI freebies that this class offers.</p>
<p>This class reimplements </p><ul>
<li><a class="el" href="class_g_c_f_1_1_component.html#a8447de04766d75220159e9db2ceeb5c8">GCF::Component::contentObjectLoadEvent()</a> - to identify special kinds of objects like <code>action</code>, <code>widget</code> and calls specialized virtual functions for creation of such objects.</li>
</ul>
<ul>
<li><a class="el" href="class_g_c_f_1_1_component.html#a692d57781b5f4e9034624e31b6727c14">GCF::Component::contentObjectUnloadEvent()</a> - to call specialized unload methods based on object-type.</li>
</ul>
<ul>
<li><a class="el" href="class_g_c_f_1_1_component.html#a1de83ead9a736b7fe19f61626b24a5b6">GCF::Component::contentObjectMergeEvent()</a> - to call specialized merge methods based on the types of objects that are being merged.</li>
</ul>
<ul>
<li><a class="el" href="class_g_c_f_1_1_component.html#a2ddd32175fb6ca0dec4ca0b7443543ce">GCF::Component::contentObjectUnmergeEvent()</a> - to call specialized unmerge methods based on the types of objects that are being unmerged.</li>
</ul>
<ul>
<li><a class="el" href="class_g_c_f_1_1_component.html#acdc6848ac70f5c13c78b6782a5666cd3">GCF::Component::activateContentObjectEvent()</a> - to call specialized activation methods based on object type.</li>
</ul>
<ul>
<li><a class="el" href="class_g_c_f_1_1_component.html#a8fe3cdb6bb891d7e67d498a3a55900b3">GCF::Component::deactivateContentObjectEvent()</a> - to call specialized deactivation methods based on object type.</li>
</ul>
<p>All of the specialized virtual methods called by the above event handlers have default implementations. This means that the specialized virtual methods already know how to create one or more object types and make your GUI component functional.</p>
<p>For instance, consider the content-file below </p><div class="fragment"><div class="line">&lt;content&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;!-- Create the top-level main-window --&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;window&quot;</span> type=<span class="stringliteral">&quot;widget&quot;</span> <span class="keyword">class</span>=<span class="stringliteral">&quot;QMainWindow&quot;</span>&gt;</div>
<div class="line">        &lt;<span class="keyword">property</span>&gt;</div>
<div class="line">            &lt;key&gt;windowTitle&lt;/key&gt;</div>
<div class="line">            &lt;value&gt;<a class="code" href="class_g_c_f_1_1_gui_component.html">GCF::GuiComponent</a> demo&lt;/value&gt;</div>
<div class="line">        &lt;/<span class="keyword">property</span>&gt;</div>
<div class="line">    &lt;/<span class="keywordtype">object</span>&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;!-- Create text editor into the workspace of the mainwindow --&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;textEditor&quot;</span> type=<span class="stringliteral">&quot;widget&quot;</span> <span class="keyword">class</span>=<span class="stringliteral">&quot;QTextEdit&quot;</span> parent=<span class="stringliteral">&quot;window&quot;</span>&gt;</div>
<div class="line">        &lt;<span class="keyword">property</span>&gt;</div>
<div class="line">            &lt;key&gt;acceptRichText&lt;/key&gt;</div>
<div class="line">            &lt;value&gt;<span class="keyword">false</span>&lt;/value&gt;</div>
<div class="line">        &lt;/<span class="keyword">property</span>&gt;</div>
<div class="line">    &lt;/<span class="keywordtype">object</span>&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;!-- Create menu-bar --&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;menuBar&quot;</span> type=<span class="stringliteral">&quot;menuBar&quot;</span> /&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;!-- Create top-level menus --&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileMenu&quot;</span> type=<span class="stringliteral">&quot;menu&quot;</span> title=<span class="stringliteral">&quot;File&quot;</span> parent=<span class="stringliteral">&quot;menuBar&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;editMenu&quot;</span> type=<span class="stringliteral">&quot;menu&quot;</span> title=<span class="stringliteral">&quot;Edit&quot;</span> parent=<span class="stringliteral">&quot;menuBar&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;helpMenu&quot;</span> type=<span class="stringliteral">&quot;menu&quot;</span> title=<span class="stringliteral">&quot;Help&quot;</span> parent=<span class="stringliteral">&quot;menuBar&quot;</span> /&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;!-- Create actions --&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileNew&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;New&quot;</span> parent=<span class="stringliteral">&quot;fileMenu&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileOpen&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Open&quot;</span> parent=<span class="stringliteral">&quot;fileMenu&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileSave&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Save&quot;</span> parent=<span class="stringliteral">&quot;fileMenu&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileSaveAs&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Save As&quot;</span> parent=<span class="stringliteral">&quot;fileMenu&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileClose&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Close&quot;</span> parent=<span class="stringliteral">&quot;fileMenu&quot;</span> /&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;fileExit&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Exit&quot;</span>  parent=<span class="stringliteral">&quot;fileMenu&quot;</span> &gt;</div>
<div class="line">        &lt;connection&gt;</div>
<div class="line">            &lt;sender&gt;triggered()&lt;/sender&gt;</div>
<div class="line">            &lt;receiver&gt;window::close()&lt;/receiver&gt;</div>
<div class="line">        &lt;/connection&gt;</div>
<div class="line">    &lt;/<span class="keywordtype">object</span>&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;editCut&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Cut&quot;</span> parent=<span class="stringliteral">&quot;editMenu&quot;</span>&gt;</div>
<div class="line">        &lt;connection&gt;</div>
<div class="line">            &lt;sender&gt;triggered()&lt;/sender&gt;</div>
<div class="line">            &lt;receiver&gt;textEditor::cut()&lt;/receiver&gt;</div>
<div class="line">        &lt;/connection&gt;</div>
<div class="line">    &lt;/<span class="keywordtype">object</span>&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;editCopy&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Copy&quot;</span> parent=<span class="stringliteral">&quot;editMenu&quot;</span>&gt;</div>
<div class="line">        &lt;connection&gt;</div>
<div class="line">            &lt;sender&gt;triggered()&lt;/sender&gt;</div>
<div class="line">            &lt;receiver&gt;textEditor::copy()&lt;/receiver&gt;</div>
<div class="line">        &lt;/connection&gt;</div>
<div class="line">    &lt;/<span class="keywordtype">object</span>&gt;</div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;editPaste&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;Paste&quot;</span> parent=<span class="stringliteral">&quot;editMenu&quot;</span>&gt;</div>
<div class="line">        &lt;connection&gt;</div>
<div class="line">            &lt;sender&gt;triggered()&lt;/sender&gt;</div>
<div class="line">            &lt;receiver&gt;textEditor::paste()&lt;/receiver&gt;</div>
<div class="line">        &lt;/connection&gt;</div>
<div class="line">    &lt;/<span class="keywordtype">object</span>&gt;</div>
<div class="line"> </div>
<div class="line">    &lt;<span class="keywordtype">object</span> <a class="code" href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">name</a>=<span class="stringliteral">&quot;helpAbout&quot;</span> type=<span class="stringliteral">&quot;action&quot;</span> text=<span class="stringliteral">&quot;About&quot;</span> parent=<span class="stringliteral">&quot;helpMenu&quot;</span> /&gt;</div>
<div class="line"> </div>
<div class="line">&lt;/content&gt;</div>
</div><!-- fragment --><p>Now when the above content-file is set for a <a class="el" href="class_g_c_f_1_1_gui_component.html" title="Extends GCF::Component to ease creation of GUI components.">GuiComponent</a> (by reimplementing its <a class="el" href="class_g_c_f_1_1_component.html#a7b9e7071c2f4b483a4ee51b08b70835c">GCF::Component::contentLoadEvent()</a> and calling <a class="el" href="class_g_c_f_1_1_content_load_event.html#a9a6a2ddca167a46d10d76111f64777e1">GCF::ContentLoadEvent::setContentFile()</a> to set the file where the above XML is stored); GCF constructs a main-window with file, edit and help menus. It then creates a text-editor on the workspace area of the main-window. The output would look as follows</p>
<div class="image">
<img src="gui-component.png" alt=""/>
</div>
 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a07e764a562147615da48972af9079f3d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07e764a562147615da48972af9079f3d">&#9670;&nbsp;</a></span>GuiComponent()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GCF::GuiComponent::GuiComponent </td>
          <td>(</td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em> = <code>nullptr</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Constructor. Creates an instance of this class and inserts it as a child under <code>parent</code>.</p>
<dl class="section note"><dt>Note</dt><dd>It is recommended that subclasses of <a class="el" href="class_g_c_f_1_1_gui_component.html">GCF::GuiComponent</a> declare their constructor as public and destructor as protected. This will ensure that the components are created on the heap always. </dd></dl>

</div>
</div>
<a id="adb3ce3559c873709379dcd31946f2da6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb3ce3559c873709379dcd31946f2da6">&#9670;&nbsp;</a></span>~GuiComponent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">GCF::GuiComponent::~GuiComponent </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Destructor.</p>
<dl class="section note"><dt>Note</dt><dd>It is recommended that subclasses of <a class="el" href="class_g_c_f_1_1_gui_component.html">GCF::GuiComponent</a> declare their constructor as public and destructor as protected. This will ensure that the components are created on the heap always. </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ada64bbc4fc1f124812e60a20bf3ac566"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada64bbc4fc1f124812e60a20bf3ac566">&#9670;&nbsp;</a></span>contentObjectLoadEvent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void GCF::GuiComponent::contentObjectLoadEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_g_c_f_1_1_content_object_load_event.html">GCF::ContentObjectLoadEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This event handler is implemented to look for a <code>type</code> key in the information map (<a class="el" href="class_g_c_f_1_1_content_object_load_event.html#adb2609b60cbd7beb86f426111a0fb262">GCF::ContentObjectLoadEvent::info()</a>) provided by the event-object. Depending on the type a specialized load function is called.</p>
<ul>
<li><code>widget</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#abede43b20eb5ed489fa73f4727311527">loadWidget()</a> </li>
<li><code>action</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#ab4ee527d9f6a3d0d24b67055a57bf8d2">loadAction()</a> </li>
<li><code>menu</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a6ec17f7013f1a5403811aedc1a44bccd">loadMenu()</a> </li>
<li><code>actiongroup</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#ab7006855f079d3023da4240d33114b19">loadActionGroup()</a> </li>
<li><code>toolbar</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#aadef90f4c5c51035fa954642a1cb539c">loadToolBar()</a> </li>
<li><code>menubar</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#af29be55061f29a43ed2f8196851ea19d">loadMenuBar()</a></li>
</ul>
<p>For all other values of <code>type</code>, the base class implementation of the event handler is called, which in-turn calls the <a class="el" href="class_g_c_f_1_1_component.html#aa764b26829ba318385b3921bf2b1800a">GCF::Component::loadObject()</a> method.</p>
<dl class="section note"><dt>Note</dt><dd>the value of type is case-insensitive </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a8447de04766d75220159e9db2ceeb5c8">GCF::Component</a>.</p>

</div>
</div>
<a id="a862fb78fdba64b956eab4c8a82c89b07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a862fb78fdba64b956eab4c8a82c89b07">&#9670;&nbsp;</a></span>contentObjectMergeEvent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void GCF::GuiComponent::contentObjectMergeEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_g_c_f_1_1_content_object_merge_event.html">GCF::ContentObjectMergeEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This event handler is implemented to look for the <code>type</code> key in parent information map, which is accessible via <a class="el" href="class_g_c_f_1_1_content_object_merge_event.html#a5114392fea3ffb3c25a729b8c561a264">GCF::ContentObjectMergeEvent::parentInfo()</a> method. Depending on the parent type; a specialized merge function is called.</p>
<ul>
<li>parent type <code>widget</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a7e77aa7032803aacbe8a695f15121760">mergeWithWidget()</a>. Note if the child is not a widget, then <a class="el" href="class_g_c_f_1_1_component.html#a1de83ead9a736b7fe19f61626b24a5b6">GCF::Component::contentObjectMergeEvent()</a> is called. </li>
<li>parent type <code>actiongroup</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a06b9c46dd5bc98a483ceefcd010da43a">mergeWithActionGroup()</a>. Note if the child is not a <code>QAction</code>, then <a class="el" href="class_g_c_f_1_1_component.html#a1de83ead9a736b7fe19f61626b24a5b6">GCF::Component::contentObjectMergeEvent()</a> is called. </li>
<li>parent type <code>menu</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a64ce09eb669f5a3ff946194d950e797f">mergeWithMenu()</a> </li>
<li>parent type <code>toolbar</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#ad8b0b899c654a6e51d7905f429700de5">mergeWithToolBar()</a> </li>
<li>parent type <code>menubar</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a24fcf14ba83e79f7c2afe024c3b0fd8b">mergeWithMenuBar()</a></li>
</ul>
<p>For all other-values of <code>type</code>, the base class implementation of the event handler is called, which in-turn calls the <a class="el" href="class_g_c_f_1_1_component.html#a92c9170c1333e88d516ec3eca693bfda">GCF::Component::mergeObject()</a> method.</p>
<dl class="section note"><dt>Note</dt><dd>the value of type is case-insensitive </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a1de83ead9a736b7fe19f61626b24a5b6">GCF::Component</a>.</p>

</div>
</div>
<a id="af79494e17d96561cfc9c0042a975c3f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af79494e17d96561cfc9c0042a975c3f0">&#9670;&nbsp;</a></span>contentObjectUnloadEvent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void GCF::GuiComponent::contentObjectUnloadEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_g_c_f_1_1_content_object_unload_event.html">GCF::ContentObjectUnloadEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This event handler is implemented to call a specialized unload function based on the <code>type</code> key in the information map obtained by calling GCF::ContentObjectUnloadEvent::info() on the event object. Depending on the value of <code>type</code>, a specialized unload function is called.</p>
<ul>
<li><code>widget</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#ac4ea639a05713bbb368e740851452419">unloadWidget()</a> </li>
<li><code>action</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#aca8e6c15489490f1ee188453515cbf6c">unloadAction()</a> </li>
<li><code>menu</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a6cadf81fea97c04b5e16a51d283a19de">unloadMenu()</a> </li>
<li><code>actiongroup</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a866661284b9754e666bc7e4e67bedc77">unloadActionGroup()</a> </li>
<li><code>toolbar</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#a6461b29d15c603aa87b4d1c59ca71c1b">unloadToolBar()</a> </li>
<li><code>menubar</code> - <a class="el" href="class_g_c_f_1_1_gui_component.html#acec3965217281de78da2fa16f864da13">unloadMenuBar()</a></li>
</ul>
<p>For all other-values of <code>type</code>, the base class implementation of the event handler is called, which in-turn calls the <a class="el" href="class_g_c_f_1_1_component.html#ad403e437d09e17139abe5bab8ae3f1e6">GCF::Component::unloadObject()</a> method.</p>
<dl class="section note"><dt>Note</dt><dd>the value of type is case-insensitive </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a692d57781b5f4e9034624e31b6727c14">GCF::Component</a>.</p>

</div>
</div>
<a id="a3682354828ce7fbffb1377d22a6019d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3682354828ce7fbffb1377d22a6019d3">&#9670;&nbsp;</a></span>contentObjectUnmergeEvent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void GCF::GuiComponent::contentObjectUnmergeEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_g_c_f_1_1_content_object_unmerge_event.html">GCF::ContentObjectUnmergeEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This event handler is implemented to look for the <code>type</code> key in parent information map, which is accessible via <a class="el" href="class_g_c_f_1_1_content_object_unmerge_event.html#a04f44811ea8e48b5177e83ee0d969ee0">GCF::ContentObjectUnmergeEvent::parentInfo()</a> method. Depending on the parent type; a specialized merge function is called.</p>
<ul>
<li>parent type <code>widget</code> - unmergeWithWidget(). Note if the child is not a widget, then <a class="el" href="class_g_c_f_1_1_component.html#a2ddd32175fb6ca0dec4ca0b7443543ce">GCF::Component::contentObjectUnmergeEvent()</a> is called. </li>
<li>parent type <code>actiongroup</code> - unmergeWithActionGroup(). Note if the child is not a <code>QAction</code>, then <a class="el" href="class_g_c_f_1_1_component.html#a2ddd32175fb6ca0dec4ca0b7443543ce">GCF::Component::contentObjectUnmergeEvent()</a> is called. </li>
<li>parent type <code>menu</code> - unmergeWithMenu() </li>
<li>parent type <code>toolbar</code> - unmergeWithToolBar() </li>
<li>parent type <code>menubar</code> - unmergeWithMenuBar()</li>
</ul>
<p>For all other-values of <code>type</code>, the base class implementation of the event handler is called, which in-turn calls the <a class="el" href="class_g_c_f_1_1_component.html#a8c371df2820b3c36a814005a4a9910df">GCF::Component::unmergeObject()</a> method.</p>
<dl class="section note"><dt>Note</dt><dd>the value of type is case-insensitive </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a2ddd32175fb6ca0dec4ca0b7443543ce">GCF::Component</a>.</p>

</div>
</div>
<a id="a23ea568005310025f648155ceb84a902"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23ea568005310025f648155ceb84a902">&#9670;&nbsp;</a></span>activateContentObjectEvent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void GCF::GuiComponent::activateContentObjectEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_g_c_f_1_1_activate_content_object_event.html">GCF::ActivateContentObjectEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This event handler is implemented to look for the <code>type</code> key in parent information map, which is accessible via <a class="el" href="class_g_c_f_1_1_activate_content_object_event.html#a6dfe54fff6ecfb0eb3505c982d1fc344">GCF::ActivateContentObjectEvent::parentInfo()</a> method.</p>
<p>If the <code>type</code> is <code>widget</code>, then the <a class="el" href="class_g_c_f_1_1_gui_component.html#aa3c5870fa4f67f09925864df86441e8e">activateWidget()</a> method is called. Otherwise the base-class implementation of this event handler is called, which in turn calls <a class="el" href="class_g_c_f_1_1_component.html#aa98b557a1c9a04a5f8f4586394174316">GCF::Component::activateObject()</a></p>
<dl class="section note"><dt>Note</dt><dd>the value of type is case-insensitive </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#acdc6848ac70f5c13c78b6782a5666cd3">GCF::Component</a>.</p>

</div>
</div>
<a id="a8b625a598a76b042b6e2948dbad4da86"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b625a598a76b042b6e2948dbad4da86">&#9670;&nbsp;</a></span>deactivateContentObjectEvent()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void GCF::GuiComponent::deactivateContentObjectEvent </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_g_c_f_1_1_deactivate_content_object_event.html">GCF::DeactivateContentObjectEvent</a> *&#160;</td>
          <td class="paramname"><em>e</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This event handler is implemented to look for the <code>type</code> key in parent information map, which is accessible via <a class="el" href="class_g_c_f_1_1_deactivate_content_object_event.html#a00ff5edcb3dc4c48c3109efea9752bfa">GCF::DeactivateContentObjectEvent::parentInfo()</a> method.</p>
<p>If the <code>type</code> is <code>widget</code>, then the <a class="el" href="class_g_c_f_1_1_gui_component.html#ab8db52de6e219c6960ea159cfbc84e80">deactivateWidget()</a> method is called. Otherwise the base-class implementation of this event handler is called, which in turn calls <a class="el" href="class_g_c_f_1_1_component.html#a4018ebb487bbe088b34e662a38c61fc8">GCF::Component::deactivateObject()</a></p>
<dl class="section note"><dt>Note</dt><dd>the value of type is case-insensitive </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a8fe3cdb6bb891d7e67d498a3a55900b3">GCF::Component</a>.</p>

</div>
</div>
<a id="abede43b20eb5ed489fa73f4727311527"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abede43b20eb5ed489fa73f4727311527">&#9670;&nbsp;</a></span>loadWidget()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QWidget * GCF::GuiComponent::loadWidget </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function may be implemented to return pointer to a widget based on <code>name</code> and <code>info</code> parameters. The default implementation of this function does the following</p>
<ul>
<li>Extracts value of the <code>class</code> key in <code>info</code> and creates an instance of the corresponding widget class. Currently widgets for classes <code>QMainWindow</code>, <code>QTabWidget</code>, <code>QStackedWidget</code>, <code>QGroupBox</code>, <code>QTableWidget</code>, <code>QPlainTextEdit</code> and <code>QTextEdit</code> are created. For all other class-names a <code>QWidget</code> instance is created. In a future release we will make it possible to create appropriate instance of any Qt widget.</li>
</ul>
<ul>
<li>Extracts the value of <code>layout</code> key in <code>info</code> and installs the corresponding layout on the widget. Accepted values of <code>layout</code> key are <code>vertical</code>, <code>horizontal</code>, <code>grid</code> and <code>form</code>.</li>
</ul>
<ul>
<li>Extracts the value of <code>geometry</code> key in <code>info</code> and splits the value across comma (,). The split list is considered to contain <code>x</code>, <code>y</code>, <code>width</code> and <code>height</code> values. This will then be set as the geoemtry of the created widget.</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the widget to be loaded. This name would be set as the <code>objectName</code> of the returned <code>QWidget</code>. </td></tr>
    <tr><td class="paramname">info</td><td>information map, that provides some hints about the kind of widget that needs to be loaded. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Pointer to a widget that got loaded.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>The function always returns a valid <code>QWidget</code> pointer.</dd>
<dd>
If you reimplement this function, please remember to call the default (this) implementation at the end. </dd></dl>

</div>
</div>
<a id="ac4ea639a05713bbb368e740851452419"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4ea639a05713bbb368e740851452419">&#9670;&nbsp;</a></span>unloadWidget()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unloadWidget </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>widget</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be implemented to unload a widget. The default implementation ignores <code>name</code> and <code>info</code>, and simply deletes the <code>widget</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the widge that needs to be unloaded </td></tr>
    <tr><td class="paramname">widget</td><td>pointer to the <code>QWidget</code> that needs to be unloaded </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map associated with the widget that needs to be unloaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true upon successful unloading of the widget, false otherwise.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns true </dd></dl>

</div>
</div>
<a id="ab4ee527d9f6a3d0d24b67055a57bf8d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4ee527d9f6a3d0d24b67055a57bf8d2">&#9670;&nbsp;</a></span>loadAction()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QAction * GCF::GuiComponent::loadAction </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be reimplemented to load a <code>QAction</code> object based on <code>name</code> and <code>info</code>. The default implementation creates a new <code>QAction</code> instance and sets its <code>text</code> and <code>tooltip</code> values by reading from the <code>text</code> and <code>tooltip</code> keys from <code>info</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the action to load </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map of the action that needs to be loaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to a <code>QAction</code> instance</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns a valid <code>QAction</code> pointer. </dd></dl>

</div>
</div>
<a id="aca8e6c15489490f1ee188453515cbf6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca8e6c15489490f1ee188453515cbf6c">&#9670;&nbsp;</a></span>unloadAction()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unloadAction </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QAction *&#160;</td>
          <td class="paramname"><em>action</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be implemented to unload an action. The default implementation ignores <code>name</code> and <code>info</code>, and simply deletes the <code>action</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the action that needs to be unloaded </td></tr>
    <tr><td class="paramname">action</td><td>pointer to the <code>QAction</code> that needs to be unloaded </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map associated with the action that needs to be unloaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true upon successful unloading of the action, false otherwise.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns true </dd></dl>

</div>
</div>
<a id="ab7006855f079d3023da4240d33114b19"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7006855f079d3023da4240d33114b19">&#9670;&nbsp;</a></span>loadActionGroup()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QActionGroup * GCF::GuiComponent::loadActionGroup </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be reimplemented to load a <code>QActionGroup</code> object based on <code>name</code> and <code>info</code>. The default implementation creates a new <code>QActionGroup</code> instance and sets its <code>exclusive</code> property by reading the <code>exclusive</code> key from <code>info</code> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the action group to load </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map of the action group that needs to be loaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to a <code>QActionGroup</code> instance</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns a valid <code>QActionGroup</code> pointer. </dd></dl>

</div>
</div>
<a id="a866661284b9754e666bc7e4e67bedc77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a866661284b9754e666bc7e4e67bedc77">&#9670;&nbsp;</a></span>unloadActionGroup()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unloadActionGroup </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QActionGroup *&#160;</td>
          <td class="paramname"><em>actionGroup</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be implemented to unload an action group. The default implementation ignores <code>name</code> and <code>info</code>, and simply deletes the <code>actionGroup</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the action group that needs to be unloaded </td></tr>
    <tr><td class="paramname">action</td><td>pointer to the <code>QActionGroup</code> that needs to be unloaded </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map associated with the action group that needs to be unloaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true upon successful unloading of the action group, false otherwise.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns true </dd></dl>

</div>
</div>
<a id="a6ec17f7013f1a5403811aedc1a44bccd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6ec17f7013f1a5403811aedc1a44bccd">&#9670;&nbsp;</a></span>loadMenu()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QMenu * GCF::GuiComponent::loadMenu </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be reimplemented to load a <code>QMenu</code> object based on <code>name</code> and <code>info</code>. The default implementation creates a new <code>QMenu</code> instance and sets its <code>text</code> and <code>tooltip</code> values by reading from the <code>text</code> and <code>tooltip</code> keys from <code>info</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the menu to load </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map of the menu that needs to be loaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to a <code>QMenu</code> instance</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns a valid <code>QMenu</code> pointer. </dd></dl>

</div>
</div>
<a id="a6cadf81fea97c04b5e16a51d283a19de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cadf81fea97c04b5e16a51d283a19de">&#9670;&nbsp;</a></span>unloadMenu()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unloadMenu </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QMenu *&#160;</td>
          <td class="paramname"><em>menu</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be implemented to unload a menu. The default implementation ignores <code>name</code> and <code>info</code>, and simply deletes the <code>menu</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the menu that needs to be unloaded </td></tr>
    <tr><td class="paramname">action</td><td>pointer to the <code>QMenu</code> that needs to be unloaded </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map associated with the menu that needs to be unloaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true upon successful unloading of the menu, false otherwise.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns true </dd></dl>

</div>
</div>
<a id="af29be55061f29a43ed2f8196851ea19d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af29be55061f29a43ed2f8196851ea19d">&#9670;&nbsp;</a></span>loadMenuBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QMenuBar * GCF::GuiComponent::loadMenuBar </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be reimplemented to load a <code>QMenuBar</code> object based on <code>name</code> and <code>info</code>. The default implementation ignores <code>name</code> and <code>info</code> and creates a new <code>QMenuBar</code> instance.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the menu-bar to load </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map of the menu-bar that needs to be loaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to a <code>QMenuBar</code> instance</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns a valid <code>QMenuBar</code> pointer. </dd></dl>

</div>
</div>
<a id="acec3965217281de78da2fa16f864da13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acec3965217281de78da2fa16f864da13">&#9670;&nbsp;</a></span>unloadMenuBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unloadMenuBar </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QMenuBar *&#160;</td>
          <td class="paramname"><em>menuBar</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be implemented to unload a menu-bar. The default implementation ignores <code>name</code> and <code>info</code>, and simply deletes the <code>menuBar</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the menu-bar that needs to be unloaded </td></tr>
    <tr><td class="paramname">action</td><td>pointer to the <code>QMenuBar</code> that needs to be unloaded </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map associated with the menu-bar that needs to be unloaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true upon successful unloading of the menu-bar, false otherwise.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns true </dd></dl>

</div>
</div>
<a id="aadef90f4c5c51035fa954642a1cb539c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aadef90f4c5c51035fa954642a1cb539c">&#9670;&nbsp;</a></span>loadToolBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">QToolBar * GCF::GuiComponent::loadToolBar </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be reimplemented to load a <code>QToolBar</code> object based on <code>name</code> and <code>info</code>. The default implementation creates a new <code>QToolBar</code> instance and sets it <code>title</code> property by reading the <code>title</code> key from <code>info</code> </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the tool-bar to load </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map of the tool-bar that needs to be loaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>pointer to a <code>QToolBar</code> instance</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns a valid <code>QToolBar</code> pointer. </dd></dl>

</div>
</div>
<a id="a6461b29d15c603aa87b4d1c59ca71c1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6461b29d15c603aa87b4d1c59ca71c1b">&#9670;&nbsp;</a></span>unloadToolBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unloadToolBar </td>
          <td>(</td>
          <td class="paramtype">const QString &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QToolBar *&#160;</td>
          <td class="paramname"><em>toolBar</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>info</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be implemented to unload a tool-bar. The default implementation ignores <code>name</code> and <code>info</code>, and simply deletes the <code>toolBar</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of the tool-bar that needs to be unloaded </td></tr>
    <tr><td class="paramname">action</td><td>pointer to the <code>QToolBar</code> that needs to be unloaded </td></tr>
    <tr><td class="paramname">info</td><td>information key=value map associated with the tool-bar that needs to be unloaded </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true upon successful unloading of the tool-bar, false otherwise.</dd></dl>
<dl class="section note"><dt>Note</dt><dd>the default implementation always returns true </dd></dl>

</div>
</div>
<a id="a2df81bac62394e1ce2b3c82974d8723c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2df81bac62394e1ce2b3c82974d8723c">&#9670;&nbsp;</a></span>mergeObject()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::mergeObject </td>
          <td>(</td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function is reimplemented from <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a> to handle the case where <code>child</code> is a layout and <code>parent</code> is a widget. For all other cases the base class implementation is called.</p>
<p>In the case where <code>child</code> is a layout and <code>parent</code> is a widget, the layout is set on the widget deleting any previous layout.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to a <code>QObject</code> added by this component. </td></tr>
    <tr><td class="paramname">child</td><td>pointer to a <code>QObject</code> that needs to be merged (or parented) into <code>parent</code> </td></tr>
    <tr><td class="paramname">parentInfo</td><td>key=value information map associated with the <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>key=value information map associated with the <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. [Note: The return value is currently ignored] </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a92c9170c1333e88d516ec3eca693bfda">GCF::Component</a>.</p>

</div>
</div>
<a id="acf0f385b556e1742e3c5df8c9222a0f3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acf0f385b556e1742e3c5df8c9222a0f3">&#9670;&nbsp;</a></span>unmergeObject()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unmergeObject </td>
          <td>(</td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function is reimplemented from <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a> to handle the case where <code>child</code> is a layout and <code>parent</code> is a widget. In such a case the <code>child</code> layout will be deleted and the \parent widget will be left with no layout. For all other cases the base class implementation is called.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to a <code>QObject</code> added by this component. </td></tr>
    <tr><td class="paramname">child</td><td>pointer to a <code>QObject</code> that needs to be unmerged (or parented) into <code>parent</code> </td></tr>
    <tr><td class="paramname">parentInfo</td><td>key=value information map associated with the <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>key=value information map associated with the <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. [Note: The return value is currently ignored] </dd></dl>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a8c371df2820b3c36a814005a4a9910df">GCF::Component</a>.</p>

</div>
</div>
<a id="a7e77aa7032803aacbe8a695f15121760"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e77aa7032803aacbe8a695f15121760">&#9670;&nbsp;</a></span>mergeWithWidget()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::mergeWithWidget </td>
          <td>(</td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This virtual function can be reimplemented to customize the way in which a <code>child</code> widget is parented into the <code>parent</code> widget. The default implementation makes use of the following rules while performing the merge.</p>
<ul>
<li>if <code>child</code> is a <code>QMenuBar</code>, then it is set as a menu-widget in the <code>parent's</code> widget.</li>
</ul>
<ul>
<li>if <code>parent</code> is a <code>QTabWidget</code>, then the <code>child</code> is added as a tab; with the value of <code>title</code> from the <code>childInfo</code> as tab-title.</li>
</ul>
<ul>
<li>if <code>parent</code> is a <code>QStackedWidget</code>, then the <code>child</code> is added as a widget to it.</li>
</ul>
<ul>
<li>if <code>parent</code> is a <code>QMainWindow</code>, then the <code>child</code> is added as a widget to the central-widget. If no such central widget exist; then a default central widget with vertical layout is created. The <code>child</code> is then added to the newly created central widget.</li>
</ul>
<ul>
<li>if the <code>parent</code> is a <code>QWidget</code> and has a layout, then the <code>child</code> is added to the layout. Value of the <code>layoutposition</code> key in <code>childInfo</code> can provide hints about the insert-index. If <code>parent</code> has a form layout, then the label for <code>child</code> will be picked up from <code>labeltext</code> key of <code>childInfo</code>.</li>
</ul>
<ul>
<li>if <code>parent</code> does not have any layout associated with it; then <code>child</code> is reparented to <code>parent</code>. Position of the <code>child</code> within <code>parent</code> will be detemrined by the <code>geometry</code> key of <code>childInfo</code>.</li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the parent <code>QWidget</code> into which the child should be merged </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the child <code>QWidget</code> that needs merging </td></tr>
    <tr><td class="paramname">parentInfo</td><td>pointer to the information key=value map associated with the <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>pointer to the information key=value map associated with the <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. (The default implementation always returns true) </dd></dl>

</div>
</div>
<a id="a1f962e11fdfe6f5bb7a3e399e51e73c0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f962e11fdfe6f5bb7a3e399e51e73c0">&#9670;&nbsp;</a></span>unmergeFromWidget()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unmergeFromWidget </td>
          <td>(</td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Thi function can be implemented to customize the way in which <code>child</code> is unmerged (or unparented) from <code>parent</code>. The default implementation removes <code>child</code> from the <code>parent</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the parent <code>QWidget</code> from which the child should be unmerged </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the child <code>QWidget</code> that needs unmerging </td></tr>
    <tr><td class="paramname">parentInfo</td><td>pointer to the information key=value map associated with the <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>pointer to the information key=value map associated with the <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. (The default implementation always returns true) </dd></dl>

</div>
</div>
<a id="a06b9c46dd5bc98a483ceefcd010da43a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a06b9c46dd5bc98a483ceefcd010da43a">&#9670;&nbsp;</a></span>mergeWithActionGroup()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::mergeWithActionGroup </td>
          <td>(</td>
          <td class="paramtype">QActionGroup *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QAction *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> action is added to the <code>parent</code> action-group. The default implementation simply adds the action to the action group.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QActionGroup</code> into which an action needs to be added </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QAction</code> that needs to be added </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. (The default implementation returns true always) </dd></dl>

</div>
</div>
<a id="ab50d746460c1cde7b30ed5a0d91d5437"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab50d746460c1cde7b30ed5a0d91d5437">&#9670;&nbsp;</a></span>unmergeFromActionGroup()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unmergeFromActionGroup </td>
          <td>(</td>
          <td class="paramtype">QActionGroup *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QAction *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> action is removed from the <code>parent</code> action-group. The default implementation simply removes the action from the action group.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QActionGroup</code> from which an action needs to be removed </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QAction</code> that needs to be removed </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true on success, false otherwise. (The default implementation returns true always) </dd></dl>

</div>
</div>
<a id="a64ce09eb669f5a3ff946194d950e797f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64ce09eb669f5a3ff946194d950e797f">&#9670;&nbsp;</a></span>mergeWithMenu()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::mergeWithMenu </td>
          <td>(</td>
          <td class="paramtype">QMenu *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> is added to the <code>parent</code> menu. The default implementation </p><ul>
<li>adds <code>child</code> as an action to <code>parent</code>, if <code>child</code> is a <code>QAction</code> </li>
<li>adds <code>child</code> as sub-menu to <code>parent</code>, if <code>child</code> is a <code>QMenu</code> </li>
<li>adds <code>child</code> as widget-action to <code>parent</code>, if <code>child</code> is a <code>QWidget</code> </li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QMenu</code> into which the child needs to be added </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QObject</code> that needs to be added </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if <code>child</code> was a <code>QAction</code>, <code>QMenu</code> or <code>QWidget</code>. False otherwise. </dd></dl>

</div>
</div>
<a id="ae5368f23f04d0b1b3f0b52cb623fbf10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae5368f23f04d0b1b3f0b52cb623fbf10">&#9670;&nbsp;</a></span>unmergeFromMenu()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unmergeFromMenu </td>
          <td>(</td>
          <td class="paramtype">QMenu *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> is removed from the <code>parent</code> menu. The default implementation </p><ul>
<li>removes <code>child</code> as an action from <code>parent</code>, if <code>child</code> is a <code>QAction</code> </li>
<li>removes <code>child</code> as sub-menu from <code>parent</code>, if <code>child</code> is a <code>QMenu</code> </li>
<li>removes <code>child</code> as widget-action from <code>parent</code>, if <code>child</code> is a <code>QWidget</code> </li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QMenu</code> from which the child needs to be removed </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QObject</code> that needs to be removed </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if <code>child</code> was a <code>QAction</code>, <code>QMenu</code> or <code>QWidget</code>. False otherwise. </dd></dl>

</div>
</div>
<a id="ad8b0b899c654a6e51d7905f429700de5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad8b0b899c654a6e51d7905f429700de5">&#9670;&nbsp;</a></span>mergeWithToolBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::mergeWithToolBar </td>
          <td>(</td>
          <td class="paramtype">QToolBar *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> is added to the <code>parent</code> toolbar. The default implementation </p><ul>
<li>adds <code>child</code> as an action to <code>parent</code>, if <code>child</code> is a <code>QAction</code> </li>
<li>adds <code>child</code> as an menu to <code>parent</code>, if <code>child</code> is a <code>QMenu</code> </li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QToolBar</code> into which the child needs to be added </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QObject</code> that needs to be added </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if <code>child</code> was a <code>QAction</code> or <code>QMenu</code>. False otherwise. </dd></dl>

</div>
</div>
<a id="a0fad78abca5c7a18c25ae55632bcc513"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fad78abca5c7a18c25ae55632bcc513">&#9670;&nbsp;</a></span>unmergeFromToolBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unmergeFromToolBar </td>
          <td>(</td>
          <td class="paramtype">QToolBar *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> is removed from the <code>parent</code> toolbar. The default implementation </p><ul>
<li>removes <code>child</code> as an action from <code>parent</code>, if <code>child</code> is a <code>QAction</code> </li>
<li>removes <code>child</code> as a menu from <code>parent</code>, if <code>child</code> is a <code>QMenu</code> </li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QToolBar</code> from which the child needs to be added </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QObject</code> that needs to be added </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if <code>child</code> was a <code>QAction</code> or <code>QMenu</code>. False otherwise. </dd></dl>

</div>
</div>
<a id="a24fcf14ba83e79f7c2afe024c3b0fd8b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24fcf14ba83e79f7c2afe024c3b0fd8b">&#9670;&nbsp;</a></span>mergeWithMenuBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::mergeWithMenuBar </td>
          <td>(</td>
          <td class="paramtype">QMenuBar *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> is added to the <code>parent</code> menu-bar. The default implementation adds <code>child</code> as a menu to <code>parent</code>, if <code>child</code> is an instance of <code>QMenu</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QMenuBar</code> into which the child needs to be added </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QObject</code> that needs to be added </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if <code>child</code> was a <code>QMenu</code>. False otherwise. </dd></dl>

</div>
</div>
<a id="aeec9a2994808f423ed546d37bcf77c58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeec9a2994808f423ed546d37bcf77c58">&#9670;&nbsp;</a></span>unmergeFromMenuBar()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::unmergeFromMenuBar </td>
          <td>(</td>
          <td class="paramtype">QMenuBar *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be implemented to customize the way in which <code>child</code> is removed from the <code>parent</code> menu-bar. The default implementation removes <code>child</code> as a menu from <code>parent</code>, if <code>child</code> is an instance of <code>QMenu</code>.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">parent</td><td>pointer to the <code>QMenuBar</code> from which the child needs to be removed </td></tr>
    <tr><td class="paramname">child</td><td>pointer to the <code>QObject</code> that needs to be removed </td></tr>
    <tr><td class="paramname">parentInfo</td><td>information key=value map associated with <code>parent</code> </td></tr>
    <tr><td class="paramname">childInfo</td><td>information key=value map associated with <code>child</code> </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if <code>child</code> was a <code>QMenu</code>. False otherwise. </dd></dl>

</div>
</div>
<a id="a08afba3a4d51e310da277b9c7914643e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08afba3a4d51e310da277b9c7914643e">&#9670;&nbsp;</a></span>activateObject()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::activateObject </td>
          <td>(</td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function is reimplemented from <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a> to set the <code>enabled</code> property of <code>child</code> as true, if <code>child</code> is an instance of <code>QAction</code>. The base class implementation is called for all other cases. </p>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#aa98b557a1c9a04a5f8f4586394174316">GCF::Component</a>.</p>

</div>
</div>
<a id="aa5ee97968677c04dc230317eb87d0b4f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa5ee97968677c04dc230317eb87d0b4f">&#9670;&nbsp;</a></span>deactivateObject()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::deactivateObject </td>
          <td>(</td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QObject *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function is reimplemented from <a class="el" href="class_g_c_f_1_1_component.html">GCF::Component</a> to set the <code>enabled</code> property of <code>child</code> as false, if <code>child</code> is an instance of <code>QAction</code>. The base class implementation is called for all other cases. </p>

<p>Reimplemented from <a class="el" href="class_g_c_f_1_1_component.html#a4018ebb487bbe088b34e662a38c61fc8">GCF::Component</a>.</p>

</div>
</div>
<a id="aa3c5870fa4f67f09925864df86441e8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa3c5870fa4f67f09925864df86441e8e">&#9670;&nbsp;</a></span>activateWidget()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::activateWidget </td>
          <td>(</td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be reimplemented to customize the way in which <code>child</code> is activated in <code>parent</code>, based on information provided by <code>parentInfo</code> and <code>childInfo</code>. The default implementation sets the <code>enabled</code> property of <code>child</code> as true. The default implementation always returns true. </p>

</div>
</div>
<a id="ab8db52de6e219c6960ea159cfbc84e80"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8db52de6e219c6960ea159cfbc84e80">&#9670;&nbsp;</a></span>deactivateWidget()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool GCF::GuiComponent::deactivateWidget </td>
          <td>(</td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>parent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">QWidget *&#160;</td>
          <td class="paramname"><em>child</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>parentInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const QVariantMap &amp;&#160;</td>
          <td class="paramname"><em>childInfo</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>This function can be reimplemented to customize the way in which <code>child</code> is deactivated in <code>parent</code>, based on information provided by <code>parentInfo</code> and <code>childInfo</code>. The default implementation sets the <code>enabled</code> property of <code>child</code> as false. The default implementation always returns false. </p>

</div>
</div>
</div><!-- contents -->
<div class="ttc" id="aclass_g_c_f_1_1_gui_component_html"><div class="ttname"><a href="class_g_c_f_1_1_gui_component.html">GCF::GuiComponent</a></div><div class="ttdoc">Extends GCF::Component to ease creation of GUI components.</div><div class="ttdef"><b>Definition:</b> GuiComponent.h:35</div></div>
<div class="ttc" id="aclass_g_c_f_1_1_component_html_a424f54d7c57c719b0ec16c3094ca565a"><div class="ttname"><a href="class_g_c_f_1_1_component.html#a424f54d7c57c719b0ec16c3094ca565a">GCF::Component::name</a></div><div class="ttdeci">virtual QString name() const</div><div class="ttdef"><b>Definition:</b> Component.cpp:444</div></div>
</div>
</div>
</div>
<div class="footer_content">
<table width="100%" class="footer">
<tr>
<td align="left" width="50%">Copyright &copy; 2013-2019,
 <a class="el" href="http://www.vcreatelogic.com" target="_black">VCreate Logic Private Limited</a></td>
<td align="right" width="50%"><a class="el" href="http://www.vcreatelogic.com/products/gcf" target="_black">GCF - Generic Component Framework</a></td>
</tr>
</table>
</div>
</div>
</body>
</html>
